secure coding standards smart card deployment secure coding techniques secure software development security code review risk management security threat model security smart card module penetration testing